home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Tools / Languages / Caml Light 0.61 / Source / src / librar / main.ml < prev    next >
Encoding:
Text File  |  1993-09-24  |  1.1 KB  |  45 lines  |  [TEXT/MPS ]

  1. (* The Caml Light libarian. Command-line parsing. *)
  2.  
  3. #open "config";;
  4. #open "misc";;
  5.  
  6. let lib_files = ref ([] : string list)
  7. and lib_name = ref "library.zo";;
  8.  
  9. let anonymous s =
  10.   lib_files := s :: !lib_files;;
  11.  
  12. let set_output s =
  13.   lib_name := s
  14. and show_version () =
  15.   prerr_string version__banner; prerr_endline ""
  16. and process_include filename =
  17.   do_list anonymous (readword__from_file filename)
  18. and set_stdlib p =
  19.   path_library := p;
  20.   load_path := [!path_library]
  21. and add_include d =
  22.   load_path := d :: !load_path
  23. ;;
  24.  
  25. let main() =
  26.   try
  27.     load_path := [!path_library];
  28.     arg__parse ["-stdlib", arg__String set_stdlib;
  29.                 "-I", arg__String add_include;
  30.                 "-o", arg__String set_output;
  31.                 "-output", arg__String set_output;
  32.                 "-v", arg__Unit show_version;
  33.                 "-version", arg__Unit show_version;
  34.                 "-files", arg__String process_include;
  35.               "-", arg__String anonymous]
  36.              anonymous;
  37.     librar__make_library (rev !lib_files) !lib_name;
  38.     exit 0
  39.   with Toplevel ->
  40.     exit 2
  41. ;;
  42.  
  43. printexc__f main ()
  44. ;;
  45.